7  Lezione 9 - 18/10

7.1 Query Expansion

  • La forma più comune di query expansion utilizza una qualche forma di thesaurus: per ogni termine t in una query, la query può essere espansa con sinonimi e parole correlate di t dal thesaurus.
    • L’uso di un thesaurus può essere combinato con metodi di weighting dei termini: ad esempio, si potrebbero considerare i termini aggiunti meno “pesanti” dei termini appartenenti alla query originale.
    • La query expansion basata sul thesaurus ha il vantaggio di non richiedere alcun input da parte dell’utente, ma in caso di termini ambigui potrebbe portare a risultati poco precisi, la query avrebbe alta recall ma bassa precision.
    • Inoltre la produzione di un thesaurus è decisamente costosa e non è detto che ne esistano per ogni specifico dominio.
  • In alternativa, posso espanderla creando una matrice di correlazione prendendo la matrice terms x docs e moltiplicandola con la sua trasposta, ottenendo una matrice terms x terms che mi da in qualche modo un’indicazione della vicinanza tra i termini.
    • Un altro modo può essere quello di sfruttare il query log mining, cioè basarci sul log delle query dell’utente, molto utilizzato in ambito Web

7.2 Valutazione di sistemi di Information Retrieval

  • La retrieval evaluation è un processo che utilizza delle metriche per valutare i risultati prodotti da un sistema IR in risposta ad un insieme di query poste dall’utente.
    • Questa metrica dovrebbe essere direttamente associata alla rilevanza dei risultati per l’utente.
    • Un approccio comune consiste nel confrontare, a parità di query, i risultati prodotti dal sistema con i risultati suggeriti da un gruppo di persone.
  • Paradigma di Cranfield:
    1. Selezionare i sistemi da valutare
    2. Usare tali sistemi per produrre una ranked list di documenti per ogni query
    3. Calcolare l’efficacia di ogni sistema per ogni query nella collezione di test in funzione dei documenti rilevanti ritrovati
    4. Calcolare la media dei punteggi ottenuti, per ogni query, per ottenere l’efficacia complessiva del singolo sistema
    5. Usare i punteggi per ordinare i sistemi tra loro.
  • La collezione di test, sui vengono eseguite le stesse query, usata per confrontare sistemi differenti, è composta da un insieme D di documenti, un insieme I di bisogni informativi usati per il testing e un insieme di giudizi di rilevanza binari associati a ogni coppia i_m, d_j, con i_m \in I e d_j \in D, prodotti da persone esperte del dominio.
    • Chiaramente questo può essere ottenuto solo su una piccola collezione di documenti.
    • I giudizi di rilevanza sono forniti in base ad un bisogno informativo e non ad una query. Questo perché la traduzione di un bisogno informativo in una query rientra nel processo di valutazione, ovvero deve essere fatto dall’algoritmo di IR che si sta valutando.

7.2.1 Precision e Recall

Relevant Non relevant
Retrieved True Positive False Positive
Not Retrieved False Negative True Negative
  • Precision: frazione dei documenti ritrovati che sono rilevanti. Misura la correttezza dei risultati delle query fornite da quel sistema, ovvero l’abilità di restituire documenti rankati molto in alto estremamente rilevanti: \dfrac{\text{Documenti rilevanti ritrovati}}{\text{Numero documenti ritrovati}} = \dfrac{True Positive}{True Positive + False Positive}

  • Recall: frazione dei documenti rilevanti che sono stati ritrovati. Misura la completezza dei risultati delle query fornite da quel sistema, ovvero l’abilità di restituire tutti i documenti rilevanti del corpus: \dfrac{\text{Documenti rilevanti ritrovati}}{\text{Numero totale dei documenti rilevanti}} = \dfrac{True Positive}{True Positive + False Negative}

  • Se restituisco tutti i documenti di un corpus, ho recall massima, perchè sicuramente ho trovato tutti i documenti rilevanti, ma precision bassa, perchè ho sparato nel mucchio e ho restituito tanta spazzatura

  • Recall è una non-decreasing function: se aggiungo un documento rilevante ai documenti ritrovati, se questo è rilevante allora la recall aumenta, se non è rilevante la recall rimane la stessa, quella che diminuirà sarà la precision

  • Empiricamente, in un buon sistema la precision diminuisce all’aumentare della recall